Quoting Eric Conrad: # # > I don't have an exploit script, but replacing your portmap with # > Wietse's would probably not hurt. Heres the blurb: # # I can Wietse's portmapper easily under SunOS, but other # architectures (Solaris, Irix, etc.) will not cooperate. # # Does anyone have any diffs or porting info? I'll post a summary. On Irix-5.2 boxes you have to define at least this... #if !defined(SIGCHLD) && defined(SIGCLD) # define SIGCHLD SIGCLD #endif Otherwise it will generate a huge amount of zombies (<defunct> processes) that have a PTE reserved for their exit status info though the child process has completed long ago. My reap()-function is also somewhat different from Wietses original on Irix-5.2 mostly because I had to re-assign the signal handler to ensure I can always catch SIGCHLD. void reap() { int status; /* while (wait3(&status, WNOHANG, (struct rusage *)NULL) > 0); */ while (waitpid (-1, &status, WNOHANG) > 0); (void) signal (SIGCHLD, reap); } For some reason Irix-5.x seems to need re-initialization of the signal handler. Well, this is an old SysV practice. Of this I am aware but it still doesn't look like a handy thing to my tastes. Waitpid() is there just because I wanted to use a POSIX wait- family routine when I noticed there was something rotting in the SIGCHLD catching. Cheers, // jau ------ / Jukka A. Ukkonen, M.Sc. (tech.) Centre for Scientific Computing /__ Internet: ukkonen@csc.fi Tel: (Home) +358-0-578628 / Internet: jau@cs.tut.fi (Work) +358-0-4573208 v X.400: c=fi, admd=fumail, no prmd, org=csc, pn=jukka.ukkonen